Automatic hand-supportable laser scanner with flickering laser scanning beam to improve visibility thereof and beam-symbol alignment during bar code symbol presence detection

ABSTRACT

Disclosed is a fully automatic bar code symbol reading system having an hand-supportable laser bar code reading device. The system has a number of operative states including, an object detection state, bar code presence detection state and a bar code symbol decoding state. During bar code symbol presence detection state, the visible laser scanning beam produced from the hand-supportable device flickers at a rate which improves the visual conspicuousness of the laser scanning beam in the scan field. The flicker characteristics of the laser scanning beam makes it substantially easier for the user to visually align the laser scanning beam with the bar code symbol on the detected object. Consequently, reading bar code symbols is made substantially easier using the automatic laser bar code symbol reading device of the present invention.

This is a Continuation of application Ser. No. 07/960,733, filed Oct. 14, 1992, now abandoned, which is a Continuation-in-Part of application Ser. No. 07/898,919 filed Jun. 12, 1992, now U.S. Pat. No. 5,340,973, which is a Continuation-in-Part of application Ser. No. 07/761,123 filed Sep. 17, 1991, now U.S. Pat. No. 5,340,971, which is a Continuation-in-Part of application Ser. No. 07/583,421, filed Sep. 17, 1990, now U.S. Pat. No. 5,260,553, each of said applications being incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to laser scanning systems, and more particularly to an automatic bar code symbol reading system having an automatic hand-supportable laser scanner which can be utilized in diverse lighting environments with natural hand movements, while conserving electrical power.

2. Brief Description of the Prior Art

Bar code symbols have become widely used in many commercial environments such as, for example, point-of-sale (pos) stations in retail stores and supermarkets, inventory and document tracking, and diverse data control applications.

To meet the growing demands of this recent innovation, bar code symbol readers of various types have been developed for scanning and decoding bar code symbol patterns. Typically, the symbol character data produced from such bar code readers is provided as input to automated data processing systems.

In general, prior art hand-held bar code symbol readers using laser scanning mechanisms can be classified into three categories.

The first category of hand-held bar code symbol readers includes systems having manually-actuated laser scanners which can be supported in the hand of the user. The user positions the hand-held laser scanner at a specified distance from the object bearing the bar code symbol, manually activates the scanner to initiate reading (e.g. by pulling a trigger), and then moves the scanner over other objects bearing bar code symbols to be read. Prior art bar code symbol readers illustrative of this first category are disclosed in U.S. Pat. Nos. 4,387,297 to Swartz; 4,575,625 to Knowles; 4,639,606 to Boles et al., 4,845,349 to Cherry; 4,825,057 to Swartz, et al.; 4,903,848 to Knowles; 4,933,538 to Heiman, et al.; 5,107,100 to Shepard, et al.; 5,080,456 to Katz, et al.; and 5,047,617 to Shepard et al.

The second category of hand-held bar code symbol readers includes systems utilizing hand-held scanners which have (i) a tungsten bulb, a Xenon lamp, or light emitting diodes (LEDs) to radiate light onto a bar code symbol, and (ii) an electronically scanned image sensor (e.g. CCD array) for converting the image of light reflected off the bar code symbol into a corresponding signal for decode processing. Exemplary systems of this type are disclosed in U.S. Pat. Nos. 4,570,057 to Chadima, et al., 4,818,847 to Hara, et al and 4,877,949 to Danielson, et al.

The third category of hand-held bar code symbol readers includes systems utilizing fully automated hand-held laser scanners having intelligent programs which control the operation device under diverse user operating conditions. Exemplary systems of this type of bar code symbol reading technology are disclosed in pending U.S. application Ser. Nos. 07/898,919 and 07/761,123.

While prior art hand-held manually triggered and CCD type scanners have played an important role in the development of the bar code symbol industry, these devices, suffer from a number of shortcomings and drawbacks. For example, hand-held manually-actuated laser scanners, although portable and lightweight, are not always convenient to use particularly in applications where the user must read bar coded objects over an extended period of time. In many applications, where bar coded objects to be identified reside at arms length from the user's reach, hand-held CCD scanners are difficult to operate owing to their limited depth of field.

Unlike manually automated hand-held bar code scanners, fully automatic hand-held laser scanners do not cause fatigue due to their automatic operation. Also, owing to their extended depth of field, automatic hand-held laser scanners provide increased flexibility by allowing the user to read bar coded objects residing at distances of six or more inches away from the scanner. However, even though automatic hand-held laser bar code scanners offer superior performance in most scanning applications, it has been found that in intensely illuminated scanning environments, the user's ability to perceive the visible laser scanning beam is significantly diminished in the scan field of the device. Consequently, in such scanning environments, it is difficult to visually align (i.e. register) the laser scanning beam with the bar code symbol to be scanned, thus hindering the automatic bar code symbol reading process. While the use of a higher power visible laser beam might render the beam more easily perceptible, this approach is undesirable for laser safety and power consumption reasons.

Thus, there is a great need in the bar code symbol reading art for a hand-supportable laser bar code symbol reading system which overcomes the above described shortcomings and drawbacks of prior art devices and techniques, while permitting use over a diverse range of laser scanning environments.

OBJECTS AND SUMMARY OF THE INVENTION

Accordingly, it is a primary object of the present invention to provide an automatic hand-supportable laser scanning device which utilizes psychophysiological response characteristics of the human visual system in order to produce a visible laser scanning beam that has improved user perceptibility over the scan field of the device.

A further object of the present invention is to provide such an automatic hand-supportable laser scanning device in which a visible laser beam is pulsed at a sufficient low frequency over the scan field of the device during its bar code presence detection mode of operation, so as to increase the visual conspicuousness of the laser scanning beam.

It is another object of the present invention to provide such an automatic bar code symbol reading system in which one or more bar code symbols on an object can be consecutively read without requiring unnatural hand-movements of the automatic hand-supportable laser scanning device.

A further object is to provide such an automatic bar code symbol reading system, in which the automatic hand-supportable bar code (symbol) scanning device has an infrared light object detection field which spatially encompasses at least a portion of its visible laser light scan field along the operative scanning range of the device, thereby improving the laser beam pointing efficiency of the device during the automatic bar code reading process of the present invention.

Another object of the present invention is to provide an automatic bar code symbol reading system in which the hand supportable laser scanning device can be used as either a portable hand-supported laser scanner in an automatic hands-on mode of operation, or as a stationary laser projection scanner in an automatic hands-free mode of operation.

Another object of the present invention is to provide such an automatic bar code reading system in which a support frame is provided for supporting the hand-supportable housing of the device in a selected mounting position, and permitting complete gripping of the handle portion of the handsupportable housing prior to removing it from the support frame.

A further object of the present invention is to provide such an automatic bar code symbol reading system in which the hand-supportable bar code reading device has long and short-range modes of object detection within its object detection field. In one illustrative embodiment, the long and short-range modes of object detection are manually selectable by the user by manual activation of a switch on the hand-supportable housing of the device. In another illustrative embodiment, the long-range mode of object detection is automatically selected when the hand-supportable bar code reading device is placed within the support stand during the hands-free mode of operation. In this illustrative embodiment, the short-range mode of object detection is automatically selected whenever the hand-supportable bar code reading device is picked up from the support stand and used in its hands-on mode of operation. A further object of the present invention is to provide such an automatic bar code symbol reading system, in which the hand-supportable bar code reading device has long and short-range modes of bar code presence detection within its scan field. In one illustrative embodiment, the short-range mode of bar code presence detection is manually selectable by manual activation of a switch on the hand-supportable housing of the device. In another illustrative embodiment, the short-range mode of bar code presence detection is automatically selected when the hand-supportable bar code reading device is placed within the support stand, or alternatively, upon decoding a predesignated bar code symbol preprogrammed to induce the short-range mode of bar code presence detection. In the short-range mode of bar code presence detection, the automatic bar code reading device not only detects the presence of a bar code within the scan field by analysis of collected scan data, but it further processes the collected scan data to produce digital count data representative of the measured time interval between bar and/or space transitions. Bar code symbols present within the short-range of the scan field, produce scan data having time interval characteristics falling within a prespecified timing data range. Using the results of this analysis, only bar code symbols scanned within the short-range field are deemed "detected," and only bar code symbols detected within the short-range of the scan field activate the decoding module of the device and thus enable bar code symbol reading.

A further object of the present invention is to provide such an automatic bar code symbol reading system in which the hand-supportable bar code reading device has long and short-range modes of bar code symbol reading within its scan field.

In one illustrative embodiment, the long and short-range modes of bar code symbol reading are manually selectable by the user by manual activation of a switch on the hand-supportable housing of the device.

It is a further object of the present invention to provide such an automatic bar code symbol reading system, in which the long-range mode of object detection is automatically selected when the hand-supportable bar code reading device is placed within the support stand during the hands-free mode of operation, or alternatively, upon decoding a predesignated bar code symbol preprogrammed to induce the mode of bar code symbol reading. In this illustrative embodiment, the short-range mode of object detection is automatically selected whenever the hand-supportable bar code reading device is picked up from the support stand and used in its hands-on mode of operation. In this short-range mode of bar code symbol reading, the only decoded bar code symbols residing within the short-range portion of the scan field, are deemed "read".

It is another object of the present invention to provide an automatic hand-supportable bar code reading device which has both long and short-range modes of object detection and bar code symbol reading, automatically selectable by placing the hand-supportable device within its support stand and removing it therefrom. With this particular embodiment of the present invention, the automatic bar code symbol reading system can be used in various bar code symbol reading applications, such as, for example, charge coupled device (CCD) scanner emulation and bar code "menu" reading in the hands-on short-range mode of operation, and counter-top PG,9 projection scanning in the hands-free long-range mode of operation.

An even further object of the present invention is to provide an automatic hand-supportable bar code reading device which prevents multiple reading of the same bar code symbol due to dwelling of the laser scanning beam upon a bar code symbol for an extended period of time.

A further object of the present invention is to provide a point-of-sale station incorporating the automatic bar code symbol reading system of the present invention.

It is a further object of the present invention to provide an automatic hand-supportable bar code reading device having a control system which has a finite number of states through which the device may pass during its automatic operation, in response to diverse conditions automatically detected within the object detection and scan fields of the device.

It is yet a further object of the present invention to provide a portable, fully automatic bar code symbol reading system which is compact, simple to use and versatile.

Yet a further object of the present invention is to provide a novel method of reading bar code symbols using a automatic hand-supportable laser scanning device.

These and further objects of the present invention will become apparent hereinafter and in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a fuller understanding of the objects of the present invention, the Detailed Description of the Illustrated Embodiment of the Present Invention will be taken in connection with the drawings, wherein:

FIG. 1 is a perspective view of the illustrative embodiment of the automatic bar code symbol reading system of the present invention, showing the hand-supportable laser bar code symbol reading device supported within the scanner support stand for automatic hands-free operation;

FIG. 1A is an elevated front view of the automatic bar code symbol reading system of FIG. 1, showing the light transmission window of the hand-supportable bar code symbol reading device while supported within the scanner support stand;

FIG. 1B is a plan view of the automatic bar code symbol reading system shown in FIG. 1;

FIG. 1C is a bottom view of the automatic bar code symbol reading system shown in FIG. 1;

FIG. 2 is a perspective view of the automatic hand-supportable bar code symbol reading device of the system hereof, shown being used in the automatic hands-on mode of operation;

FIG. 2A is a elevated, cross-sectional side view taken along the longitudinal extent of the automatic bar code symbol reading device of FIG. 2, showing various hardware and software components utilized in realizing the illustrative embodiment of the automatic hand-supportable bar code symbol reading device of the present invention;

FIG. 2B is a cross-sectional plan view taken along line 2B--2B of FIG. 2A, showing the various components used in realizing the illustrative embodiment of the automatic bar code symbol reading device;

FIG. 2C is an elevated partially fragmented cross-sectional view of the head portion of the automatic hand supportable bar code symbol reading device of the present invention, illustrating an electro-optical arrangement utilized in transmitting pulsed infrared light signals over the object detection field of the device;

FIG. 2D is an elevated partially fragmented cross-sectional view of the head portion of the automatic hand-supportable bar code symbol reading device of the present invention, illustrating the electro-optical arrangement utilized in producing the object detection field of the device;

FIG. 3 is an elevated side view of the hand-supportable bar code symbol reading device of the illustrative embodiment of the present invention, illustrating the spatial relationship between the object detection and scan fields of the device, and the long and short-ranges of programmed object detection, bar code presence detection, and bar code symbol reading;

FIG. 3A is a plan view of the automatic hand-supportable bar code symbol reading device taken along line 3A--3A of FIG. 3;

FIG. 4 is a system block functional diagram of the automatic hand-supportable bar code symbol reading device of the present invention, illustrating the principal components integrated with the system controller thereof;

FIG. 5 is a block functional diagram of a first embodiment of the object detection mechanism for the automatic hand-supportable bar code symbol reading device of the present invention;

FIG. 6 is a schematic diagram illustrating the intensity versus time characteristics of the visible laser scanning beam produced during the bar code presence detection mode of operation of the automatic hand-supportable bar code symbol reading device of the present invention;

FIGS. 7A and 7B, taken together, show a high level flow chart of a system control program (i.e. Main System Control Routine) contained within the control system of the automatic bar code symbol reading device, illustrating various courses of programmed system operation that the illustrative embodiment may undergo;

FIGS. 8A, 8A¹, 8B and 8B¹ taken together, show a high level flow chart of an auxiliary system control program (i.e. Auxiliary System Control Routine with Range Selection), which provides the hand-supportable automatic bar code symbol reading device of the present invention with several selectable modes of object detection, bar code presence detection and bar code symbol reading;

FIG. 9 is a state diagram illustrating the various states that the automatic hand-supportable bar code symbol reading device of the illustrative embodiment may undergo during the course of its programmed operation;

FIG. 10 is a perspective view of the support frame of the scanner support stand of the present invention;

FIG. 10A is a perspective view of the base plate of the scanner support stand of the present invention, with the adapter module mounted thereon;

FIG. 10B is a perspective, partially broken away view of the assembled scanner support stand of the present invention, showing the scanner cable, power supply cable and communication cable operably associated therewith and routed through respective apertures formed in the scanner support frame;

FIGS. 11A through 11D are perspective views of a point-of-sale system, showing the scanner support stand of the present invention supported on a horizontal countertop surface and operably connected to an electronic cash register, with the automatic hand-supportable bar code symbol reading device being used in its hand-held short-range mode of operation;

FIGS. 12A and 12B are perspective views illustrating the steps carried out during the installation of the scanner support stand of the present invention onto a vertical counter wall surface;

FIG. 13 is an elevated side view of the automatic bar code symbol reading system of the present invention, shown mounted onto the vertical counter wall surface of FIGS. 12A and 12B;

FIG. 13A is a plan view of the automatic bar code symbol reading system of the present invention taken along line 13A--13A of FIG. 13;

FIG. 13B is a cross-sectional view of the scanner support stand of the present invention, taken along line 13B--13B of FIG. 13;

FIG. 13C is a cross-sectional view of the assembled scanner stand, taken along line 13C--13C of FIG. 15A;

FIG. 14 is perspective views showing the scanner support stand mounted on a vertical counter wall surface, and the automatic hand-supportable bar code symbol reading device being used in its automatic hands-free long-range mode of operation;

FIGS. 15A and 15B are perspective views showing the scanner support stand mounted on a vertical counter wall surface, and the automatic hand-supportable bar code symbol reading device being used in its automatic hand-held short-range mode of operation;

FIG. 16 is a perspective view of a point-of-sale station according to the present invention, showing the scanner support stand pivotally supported above a horizontal counter surface by way of a pedestal base mounted under an electronic cash register, and the automatic hand-supportable bar code symbol reading device received in the scanner support stand and being used in its automatic hands-free long-range mode of operation;

FIG. 17A and 17B are perspective views of a point-of-sale station according to the present invention, showing the scanner support stand pivotally supported above a horizontal counter surface by way of the pedestal base illustrated in FIG. 16, and the automatic hand-supportable bar code symbol reading device being used in its automatic hand-held short-range mode of operation;

FIG. 18 is an elevated side view of the point-of-sale system of FIGS. 16A, 16B and 17, illustrating the rotational freedom of the scanner support stand about the x axis of the pivotal joint assembly;

FIG. 18A is an elevated, partially cross-sectional view of the base plate of the scanner support stand and the pivotal joint assembly connecting the scanner support stand to the pedestal base so as to provide three-degrees of freedom to the scanner support stand with respect to the stationary pedestal base;

FIG. 18B is a partially fragmented view of the scanner support stand, pivotal joint assembly and pedestal base taken along the y axis of the pivotal joint assembly, illustrating the rotational freedom of the scanner support stand about the y axis; and

FIG. 18C is a perspective view of the scanner support stand and pedestal base assembly taken along the -z axis of the pivotal joint assembly, illustrating the rotational freedom of the scanner support stand about the z axis of the pivotal joint assembly.

DETAILED DESCRIPTION OF THE ILLUSTRATED EMBODIMENT OF THE PRESENT INVENTION

In FIGS. 1 and 11A through 11D, the automatic laser bar code symbol reading system of the present invention is illustrated. As shown, automatic bar code symbol reading system 1 comprises a portable, automatic hand-supportable bar code (symbol) reading device 2 operably associated with scanner support stand 3 of the present invention. Operable interconnection of hand-supportable bar code reading device 2 and scanner support stand 3 is achieved by a flexible multiwire scanner cable 5 extending from bar code symbol device 2 into scanner support stand 3. Operable interconnection of scanner support stand 3 and a host system 6 (e.g. electronic cash register system, data collection device, etc.) is achieved by a flexible multiwire communications cable 7 extending from scanner support stand 3 and plugged directly into the data-input communications port of host system 6. In the illustrative embodiment, electrical power from a low voltage power supply (not shown) is provided to scanner support stand 3 by way of a flexible power cable 8.

As illustrated in FIG. 1 through 1C, scanner support stand 3 is particularly adapted for receiving and supporting hand-supportable bar code reading device 2 in a selected position without user support, thus providing a stationary, automatic hands-free mode of operation. In general, hand-supportable bar code reading device 2 includes an ultra-light weight hand-supportable housing 9 having a contoured handle portion 9A and a head portion 9B. As will be described in greater detail hereinafter, head portion 9B encloses electro-optical components which are used to generate and project a visible laser beam through a light transmissive window 10, and to repeatedly scan the projected laser beam across a scan field 11 defined external to the hand-supportable housing.

As illustrated in FIGS. 1 through 1C, scanner support stand 3 includes a support frame 12 which comprises a base portion 12A, a head portion support structure 12B, handle portion support structure 12C and a finger accommodating recess 12D. As shown, base portion 12A has a longitudinal extent and is adapted for selective positioning with respect to a support surface, e.g.-countertop surface, counter wall surface, etc. Head portion support structure 12B is operably associated with base portion 12A, for receiving and supporting the head portion of the hand-supportable bar code reading device. Similarly, handle portion support structure 12C is operably associated with base portion 12A, for receiving and supporting the handle portion of the hand-supportable bar code symbol reading device. In order that the user's hand can completely grasp the handle portion of the hand-supportable bar code reading device, that is prior to removing it off and away from the scanner support stand as illustrated in FIG. 14A, finger accommodating recess 12D is disposed between head and handle portion support structures 12B and 12C and above base portion 12A of the support frame. In this way, finger accommodating recess 12D is laterally accessible as shown in FIG. 13 so that when the handle and head portions 9A and 9B are received within and supported by handle portion support structure 12B and head portion support structure 12C, respectively, the fingers of a user's hand can be easily inserted through finger accommodating recess 12D and completely encircle the handle portion of the hand-supportable device, as illustrated in FIG. 14A.

A more detailed description of the structure, functions and operation of the scanner support stand of the present invention will be provided hereinafter referring to FIGS. 10 through 16B. However, referring to FIGS. 1 and 10 through 13, attention will be first accorded to the illustrative embodiment of the automatic hand-supportable bar code reading device of the invention.

As illustrated in FIGS. 2 through 2B in particular, head portion 9B continuously extends into contoured handle portion 9A at an obtuse angle α which, in the illustrative embodiment, is about 146 degrees. It is understood, however, that in other embodiments obtuse angle α may be in the range of about 135 to about 180 degrees. As this ergonomic housing design is sculptured (i.e. form-fitted) to the human hand, automatic hands-on scanning is rendered as easy and effortless as waving ones hand. Also, this ergonomic housing design eliminates the risks of musculoskeletal disorders, such as carpal tunnel syndrome, which can result from repeated biomechanical stress commonly associated with pointing prior art gun-shaped scanners at bar code symbols, squeezing a trigger to activate the laser scanning beam, and then releasing the trigger.

As illustrated in FIGS. 2 through 3A, the head portion of housing 9 has a transmission aperture 13 formed in upper portion of front panel 14A, to permit visible laser light to exit and enter the housing, as will be described in greater detail hereinafter. The lower portion of front panel 14B is optically opaque, as are all other surfaces of the hand supportable housing.

As illustrated in FIGS. 2, 3 and 3A in particular, automatic hand-supportable bar code reading device 2 generates two different fields external to the hand-supportable housing, in order to carry out automatic bar code symbol reading according to the principles of the present invention. The first field, referred to as the "object detection field", indicated by broken and dotted lines, is provided externally to the housing for detecting energy reflected off an object bearing a bar code symbol, located within the object detection field The second field, referred to as the "scan field", having at least one laser beam scanning plane is provided external to the housing for scanning a bar code symbol on an object in the object detection field. In the preferred embodiment, such scanning is achieved with a visible laser beam which, after reflecting off an object in the object detection field, produces laser scan data which is collected for the purpose of detecting the presence of a bar code symbol within the scan field, and for subsequently reading (i.e. scanning and decoding) the detected bar code symbol.

In general, detected energy reflected from an object during object detection can be optical radiation or acoustical energy, either sensible or non-sensible by the user, and may be either generated from the automatic bar code reading device or an external ambient source. As will be described in greater detail hereinafter, the provision of such energy is preferably achieved by transmitting a wide beam of pulsed infrared (IR) light away from transmission aperture 13, substantially parallel to longitudinal axis 15 of the head portion of the hand-supportable housing. In the preferred embodiment, the object detection field, from which such reflected energy is collected, is designed to have a narrowly diverging pencil-like geometry of three-dimensional volumetric expanse, which is spatially coincident with at least a portion of the transmitted infrared light beam. This feature of the present invention ensures that an object residing within the object detection field will be illuminated by the infrared light beam, and that infrared light reflected therefrom will be directed generally towards the transmission aperture of the housing where it can be automatically detected to indicate the presence of the object within the object detection field. In response, a visible laser beam is automatically generated within the head portion of the housing, projected through the transmission aperture and repeatedly scanned across the scan field, within which at least a portion of the detected object will reside. At least a portion of the scanned laser light beam will be scattered and reflected off the object and directed back towards and through light transmissive window 10 for collection and detection within the head portion of the housing, and subsequently processed in a manner which will be described in detail hereinafter. To ensure that the user can quickly align the visible laser beam with bar code symbol on the detected object, the object detection field is designed to spatially encompass at least a portion of the scan field along the operative scanning range of the device, as illustrated in FIGS. 3 and 3A. This structural feature of the present invention provides the user with an increased degree of control, as once an object is detected, minimal time will be required by the user to point the visible laser beam towards the bar code symbol for scanning. In effect, the laser beam pointing efficiency of the device is markedly improved during the automatic bar code reading process, as it is significantly easier for the user to align the laser beam across the bar code symbol upon object detection.

To more fully appreciate the mechanisms employed in order to generate the object detection and scan fields of automatic bar code reading device of the present invention, reference is best made to the operative elements contained within the hand-supportable housing of the device.

As shown in FIG. 4, automatic bar code reading device 2 comprises a number of system components, namely, an object detection circuit 16, laser scanning mechanism 17, photoreceiving circuit 18, analog-to-digital (A/D) conversion circuit 19, bar code presence detection module 20, bar code scan range detection module 21, symbol decoding module 22, data format conversion module 23, symbol character data storage unit 24, and data transmission circuit 25. In addition, a magnetic field sensing circuit 26 is provided for detecting scanner support stand 3, while a manual switch 27 is provided for selecting long or short-range modes of object detection, bar code presence detection and/or bar code symbol reading, which will be described in great detail hereinafter. As illustrated, these components are operably associated with a programmable system controller 28 which provides a great degree of versatility in system control, capability and operation. The structure, function and advantages of this system controller will become apparent hereinafter.

In the illustrated embodiment, system controller 28, bar code presence detection module 20, bar code scan range detection module 21, symbol decoding module 22, and data format conversion module 23 are realized using a single programmable device, such as a microprocessor having accessible program and buffer memory, and external timing circuitry. It is understood, however, that any of these elements may be realized using separate discrete components as will be readily apparent to those with ordinary skill in the art.

Automatic hand-supportable bar code reading device 2 also includes power receiving lines 29 which lead to conventional power distribution circuitry (not shown) for providing requisite power to each of the system components, when and for time prescribed by the system controller. As illustrated, power receiving lines 29 run alongside data communication lines 30 and are physically associated with multi-pin connector plug 31 at the end of flexible scanner cable 5. An on/off power switch or functionally equivalent device (not shown) may be provided external the hand-supportable housing to permit the user to selectively energize and deenergize the device. In the illustrative embodiment, power delivered through flexible scanner cable 5 to the bar code symbol reading device is continuously provided to system controller 28 so as to continuously enable its operation, while only biasing voltages and the like are provided to all other system components. In this way, each system component must be activated (i.e. enabled) by the system controller in accordance with its preprogrammed system control routine.

In accordance with the present invention, the purpose of the object detection circuit is to determine whether an object (e.g., product, document, etc.) is present or absent from the object detection field over particular time intervals specified by the system controller. When an object is detected within the object detection field, the object detection circuit produces first control activation signal A₁ =1, which like all control activation signals, is provided as input to system controller 28. As will be described in greater detail hereinafter, depending on the particular stage of the system control process, the system controller will respond to this event by causing the bar code reading device to undergo a transition from the object detection state to the bar code symbol (presence) detection state.

In FIG. 5, a preferred technique is disclosed for detecting the presence of an object within the object detection field. In essence, object detection circuit 16A operates by transmitting a pulsed infrared (IR) light signal forwardly into the object detection field. First control activation signal A₁ is generated upon receiving a reflection of the transmitted signal from an object residing within the object detection field. As illustrated, object detection circuit 16A is realized as an IR sensing circuit which comprises a synchronous receiver/transmitter 33 and an infrared LED 34 which generates a 940 nanometer pulsed signal at a rate of 20.0 KHZ. This pulsed IR signal is transmitted through focusing lens 35 to illuminate the object detection field. When an object is present within the object detection field, a reflected IR pulse signal is produced from the surface of the object, spatially filtered by aperture stop 65B and focused through focusing lens 36 onto photodiode 37. Notably, (i) selection of the optical characteristics of aperture stop 65B and lens 36 and (ii) the placement of photodiode 37 (with integrally formed lens 36) behind aperture stop 65B directly determine the geometric characteristics of the object detection field. Consequently, these optical parameters are selected so as to provide an object detection field which, as hereinbefore explained, spatially encompasses at least a portion of the scanning field along the operative scanning range of the device.

As illustrated in FIG. 5, the output of photodiode 37 is converted to a voltage by current-to-voltage amplifier 38, and the output thereof is provided as input to synchronous receiver/transmitter 33 which synchronously compares the received IR signal with the transmitted IR signal to determine whether an object is present in or absent from the object detection field. If the object is present in the object detection field, then synchronous receiver/transmitter 33 produces first control activation signal A₁ =1, indicative of this condition. Upon generation of first control activation signal A₁ =1, the system controller activates the operation of laser scanning mechanism 17, photoreceiving circuit 18, A/D conversion circuit 19, and bar code presence detection module 20 according to a preprogrammed system control routine, the details of which will be described hereinafter.

Alternatively, the automatic bar code reading device of the present invention can be readily adapted to sense ultrasonic energy reflected off an object present within the object detection field. In such an alternative embodiment, object detection circuit 16 is realized as an ultrasonic energy transmitting/receiving mechanism. In the head portion of hand-supportable housing 9, ultrasonic energy is generated and transmitted forwardly of the housing head portion into the object detection field. Then, ultrasonic energy reflected off an object within the object detection field is detected closely adjacent the transmission window using an ultrasonic energy detector. Preferably, a focusing element is disposed in front of the detector in order to effectively maximize the collection of reflected ultrasonic energy. In such instances, the focusing element essentially determines the geometrical characteristics of the object detection field of the device. Consequently, as with the other above-described object detection circuits, the energy focusing (i.e. collecting) characteristics of the focusing element will be selected to provide an object detection field which spatially encompasses at least a portion of the scan field.

For purposes of illustration, object detection circuit 16 shown in FIG. 5, is provided with two different modes of detection, namely, a long-range mode of object detection and a short-range mode of object detection. As shown in FIG. 4, these modes are set by the system controller using mode enable signals E_(IRT) =0 and E_(IRT) =1, respectively. When induced into the long-range mode of object detection, the IR sensing circuit will generate first control activation signal A₁ =1 whenever an object has been detected within the operative range of the object detection field, independent of the particular distance at which the object resides from the transmissive window. When induced into the short-range mode of object detection, the IR sensing circuit will generate first activation control signal A₁ =1 only when an object is detected at a distance within the short-range of the object detection field.

As schematically indicated in FIGS. 3 and 3A, the long-range specification for object detection is preferably preselected to be the full or entire range of sensitivity provided by IR sensing circuit 16A (e.g. 0 to about 10 inches). Preferably, the short-range specification for object detection is preselected to be the reduced range of sensitivity provided by the IR sensing circuit when mode enable signal E_(IRT) 32 1 is provided to the desensitization port of synchronous receiver/transmitter 33. In the illustrated embodiment, the short-range of object detection is about 0 to about 3 inches or so to provide CCD-like scanner emulation. As will become apparent hereinafter, the inherently limited depth and width of field associated with the short-range mode of object detection prevents laser scanning mechanism 17 from flooding the scan field with laser scanning light and thus inadvertently detecting undesired bar code symbols. Particular uses to which object detection range selection can be put, will be described in greater detail hereinafter with reference to FIGS. 11A through 16B in particular.

As illustrated in FIG. 4, laser scanning mechanism 17 comprises a light source 50 which, in general, may be any source of intense light suitably selected for maximizing the reflectively from the object's surface bearing the bar code symbol. In the illustrative embodiment, light source 50 comprises a solid-state visible laser diode (VLD) which is driven by a conventional driver circuit 51. The wavelength of visible laser light produced from the laser diode is preferably about 670 nanometers. In order to repeatedly scan the produced laser beam over a scan field having a predetermined spatial extent in front of the head portion of the housing as illustrated in FIGS. 3 and 3A, a planar scanning mirror 52 is oscillated back and forth by a stepper motor 53 driven by a conventional driver circuit 54. However, one of a variety of conventional laser scanning mechanisms may be alternatively used with excellent results. To selectively activate laser light source 50 and scanning motor 53, the system controller provides laser diode scanner enable signal E_(L), and scanning motor enable signal E_(M), as input to driver circuits 51 and 54, respectively. When enable signal E_(L) is a logical "high" level (i.e., E_(L) =1) a laser beam is generated and projected through the light transmissive window 10 and when E_(M) is a logical high level the laser beam is repeatedly scanned across the scan field.

When a bar code symbol on an object is within the scan field at the time of scanning, the incident laser light on the bar code will be scattered and reflected. This scattering/reflection process produces a laser light return signal of variable intensity which represents a spatial variation of light reflectivity characteristic of the spaced apart pattern of bars comprising the bar code symbol. Photoreceiving circuit 18 detects at least a portion of the reflected laser light of variable intensity. Upon detection of this reflected laser light, photoreceiving circuit 18 produces an analog scan data signal D₁ indicative of the detected light intensity.

In the illustrative embodiment, photoreceiving circuit 18 generally comprises laser light collection optics 55, which focus reflected laser light for subsequent detection by a photoreceiver 56 having, mounted in front of its sensor, a frequency selective filter 57 which only transmits optical radiation of wavelengths up to a small band above 670 nanometers. Photoreceiver 56, in turn, produces an analog signal which is subsequently amplified by preamplifier 58 to produce analog scan data signal D₁. In combination with laser scanning mechanism 17 and photoreceiving circuit 18 cooperate to generate analog scan data signals D₁ from the scan field over time intervals specified by the system controller. As will be illustrated hereinafter, these scan data signals are used by bar code presence detection module 20, bar code scan range detection module 21, and symbol decoding module 22 to perform particular functions. As illustrated in FIG. 4, analog scan data signal D₁ is provided as input to A/D conversion circuit 19. As is well known in the art, A/D conversion circuit 19 processes analog scan data signal D₁ to provide a digital scan data signal D₁ which resembles, in form, a pulse width modulated signal, where logical "1" signal levels represent spaces of the scanned bar code and logical "0" signal levels represent bars of the scanned bar code. A/D conversion circuit 19 can be realized by any conventional A/D circuit well known to those with ordinary skill in the art. Digitized scan data signal D₂ is then provided as input to bar code presence detection module 20, bar code scan range detection module 21 and symbol decoding module 22.

The purpose and function of bar code presence detection module 20 is to determine whether a bar code is present in or absent from the scan field over particular time intervals specified by the system controller. When a bar code symbol is detected in the scan field, bar code presence detection module 20 generates second control activation signal A₂ (i.e A₂ =1) which is provided as input to the system controller, as shown in FIG. 4. Preferably, bar code presence detection module 20 is realized as a microcode program carried out by the microprocessor and associated program and buffer memory, described hereinbefore. The function of the bar code presence detection module is not to carry out a decoding process, but rather to rapidly determine whether the received scan data signals represent a bar code symbol residing within the scan field.

There are a number of ways in which to achieve bar code presence detection through a programming implementation. For example, in the preferred embodiment, bar code presence detection module 20 detects the first and second borders of the bar code symbol "envelope". This is achieved by first processing a digital scan data signal D2 to Produce digital "count" and "sign" data. The digital count data is representative of the measured time interval (i.e. duration) of each signal level occurring between detected signal level transitions which occur in digitized scan data signal D₂. The digital sign data, on the other hand, indicates whether the signal level between detected signal level transitions is either a logical "1`, representative of a space, or a logical "0", representative of a bar within a bar code symbol. Using the digital count and sign data, the bar code presence detection module identifies the first and second borders of the bar code envelope, and thereby determines whether or not the envelope of a bar code symbol is represented by the scan data collected from the scan field. When a bar code symbol envelope is detected, the bar code symbol presence detection module provides second control activation signal A₂ =1 to the system controller. As will be described in greater detail hereinafter, second control activation signal A₂ =1 causes the device to undergo a transition from bar code presence detection state to bar code symbol reading state.

Similar to the object detection circuit described above, the bar code presence detection module is provided with two different modes of detection, namely: a long-range mode of bar code presence detection and a short-range mode of bar code presence detection. As shown in FIG. 4, these long and short-range modes are set by the system controller using mode select enabie signals E_(BCD) =0 and E_(BCD) =1, respectively. When induced into the long-range mode of detection, the bar code presence detection module will generate second control activation signal A₂ =1 whenever the envelope of a bar code symbol has been detected, despite the particular distance the bar code is from the light transmissive window. However, when induced into the short-range mode of detection, the bar code presence detection module will generate second control activation signal A₂ =1 only when the envelope of a bar code symbol has been detected and when the associated digital count (i.e. timing) data indicates that the detected bar code resides within the short-range portion of the scan field.

Similar to long-range specification for object detection, long-range specification for bar code presence detection is preselected to be the entire operative scanning range available to the device. In an illustrative embodiment, this range can be from about 0 to about 10 inches from the transmission aperture, depending on the optics employed in the laser scanning mechanism and the response characteristics of the photoreceiving circuit. These long and short-range specifications are schematically indicated in FIGS. 3 and 3A. In the preferred embodiment, short-range specification for bar code presence detection is preselected to be the same range selected for short-range object detection (e.g. approximately 0 to about 3 inches from the transmission aperture). As will become apparent hereinafter, the inherently limited depth and width of field associated with the short-range mode of bar code symbol detection, prevents the reading of detected bar code symbols residing outside the short-range portion of the scan field.

Unlike the bar code symbol presence detection module, the purpose and function of bar code scan range detection module 21 is not to detect the presence of a bar code symbol in the scan field, but rather to determine the range (i.e. distance) at which a detected or decoded bar code symbol resides from the light transmissive window of the housing. As will be explained in greater detail hereinafter, this data processing module operates upon digital scan data signal D₂ which has been previously utilized by either the bar code symbol detection module, or the symbol decoding module depending on the state of the system.

When the system is induced into its short-range mode of bar code presence detection, bar code presence detection module 20 does not automatically produce and provide second control activation signal A₂ =1 to the system controller upon the detection of a bar code symbol in the scan field. Rather, when a bar code symbol has been detected, the bar code presence detection module first provides to the system controller, a second control activation signal A_(2a) =1, indicative of a detected bar code in the scan field. Then, bar code scan range detection module 21 analyzes digital count data D_(c1) produced by the bar code presence detection module, to determine at what range the detected bar code symbol resides from the light transmissive window. If scan range detection module 21 determines that the detected bar code symbol is located within the prespecified short-range portion of the scan field, then it provides second control activation signal A_(2b) =1 to the system controller; otherwise, the scan range detection module produces second control activation signal A_(2b) =0. Only when both control activation signals A_(2a) =1 and A_(2b) =1 are received by the system controller in this mode, does A₂ =1 and thus the bar code reading device caused to undergo a transition from bar code symbol presence detection state to bar code symbolreading state.

Returning to FIG. 4, the function of symbol decoding module 22 is to process, scan line by scan line, the stream of digitized scan data D₂, in an attempt to decode a valid bar code symbol within a predetermined time period allowed by the system controller. In general, when symbol decoding module 22 successfully decodes a bar code symbol within the predetermined time period, symbol character data D₃ (typically in ASCII code format) corresponding to the decoded bar code symbol is produced. Thereupon, a third control activation signal A₃ =1 is produced by the symbol decoding module and is provided to the system controller in order to perform its system control functions.

Similar to the bar code presence detection module, the symbol decoding module is provided with two different modes of detection, namely: a long-range mode and a short-range mode of bar code symbol decoding. When the system is induced into its short-range mode of bar code symbol decoding, symbol decoding module 22 does not automatically generate third activation signal A₃ =1 upon decoding a valid bar code symbol. Rather, when a bar code symbol has been successfully decoded, the symbol decoding unit first provides to the system controller, a third activation control signal A₃ =1, indicative of a decoded bar code symbol in the scan field. Then, bar code scan range detection module 21 analyzes digital count data Dc2 produced by the symbol decoding module, to determine at what range (i.e. distance) the decoded bar code symbol resides from the transmission aperture. If the bar code scan range detection module determines that the decoded bar code symbol resides within the prespecified short-range portion of the scan field, then it provides third control activation signal A_(3b) =1 to the system controller; otherwise, bar code scan range detection module produces third control activation signal A_(3b) =0. Only when both control activation signals A_(3a) =1 and A_(3b) =1 are received by the system controller in this mode, does A_(3b) =1 and thus bar code reading device caused to undergo a transition from the bar code symbol reading state to the symbol character data transmission/storage state.

The long-range and short-range modes of bar code symbol detection and decoding described above each require the use of bar code scan range detection to determine whether or not the detected or decoded bar code symbol resides in the short or long-range portion of the scan field. As such, the use of this scan data processing technique permits the system of the present invention to condition the occurrence of particular events within the system control program. This feature of the present invention will be illustrated in great detail hereinafter when describing auxiliary system control routine of FIGS. 8A and 8B.

As will be illustrated in greater detail hereinafter with reference to FIGS. 8A and 8B, the system controller provides enable signals E_(FC), E_(DS) and E_(DT) to data format conversion module 23, data storage unit 24 and data transmission circuit 25, respectively, at particular stages of its control program. As illustrated in FIG. 4, symbol decoding module 22 provides symbol character data D₃ to data format module 23 to convert data D₃ into two differently formatted types of symbol character data, namely D₄ and D₅. Format-converted symbol character data D₅ is of the "packed data" format, particularly adapted for efficient storage in data storage unit 24. Format-converted symbol character data D₅ is particularly adapted for data transmission to host computer system 6 (e.g. an electronic cash register). When symbol character data D₄ is to be converted into the format of the user's choice (based on a selected option mode), the system controller provides enable signal E_(DS) to data storage unit 24, as shown in FIG. 4. Similarly, when format converted data D₅ is to be transmitted to host device 6, the system controller provides enable signal E_(DT) to data transmission circuit 25. Thereupon, data transmission circuit 25 transmits format-converted symbol character data D₅ to host computer system 6, via the data transmission lines of flexible scanner connector cable 5.

In order to select either the long or short-range mode of object (and bar code range detection, the hand-supportable bar code reading device is provided with both manual and automated mechanisms for effectuating such range selections. For example, a manual switch 27 is mounted on the top surface of the handle portion of the housing, so that long and short-range modes of object and bar code range detection can be selected by simply depressing this switch with ones thumb while handling the bar code reading device. This switch provides control activation signal A₄ =1 to the system controller, which in turn generates the appropriate mode enable signal E_(IRT).

In the illustrated embodiment, magnetic field sensing circuit 26 is operably associated with the system controller to automatically generate control activation signal A₄ =1 when the hand-supportable bar code reading device is not supported within scanner support stand 3. As will be described in greater detail hereinafter, scanner support stand 3 includes a means for producing a magnetic field in proximity with either one of the head or handle portion support structures 12A and 12B. With this arrangement, magnetic field sensing circuit 26 generates control activation signal A₄ =1 when the magnetic field is sensed while the hand-supportable bar code reading device is received within the scanner support stand. Additionally, a indicator light can be provided on the housing of the hand-supportable device to visually indicate the particular mode which has been manually or automatically selected.

In general, magnetic sensing circuit 26 comprises a magnetic flux detector 60, a preamplifier and a threshold detection circuit. Magnetic flux detector 60 produces as output an electrical signal representative of the intensity of detected magnetic flux density in its proximity. When housing 9 is received and supported in scanner support stand 3, as shown, for example, in FIGS. 1, 13, 15, and 17, magnetic flux detector 60 is in position to detect magnetic flux emanating from a magnetic bar fixedly mounted within the handle portion support structure of the scanner support stand. The produced electrical signal from the magnetic flux detector is amplified by the preamplifier whose output is compared to a predetermined threshold maintained in the threshold detector circuit. If the intensity of the detected magnetic flux exceeds the threshold, long-range control activation signal A₄ =1 is provided to the system controller.

As illustrated in FIG. 2, magnetic flux detector 60 is mounted to the rearward underside surface of the handle portion of housing 9 in the illustrated embodiment, a ferrous bar 61 is interiorly mounted to the underside surface of the housing handle portion as shown. As will be described in greater detail hereinafter, this arrangement facilitates releasable magnetic attachment of the hand-supportable housing to the magnetic bar fixedly installed in the handle portion support structure of the scanner support stand. Preferably, a hole 61A is drilled through ferrous bar 61 to permit installation of magnetic flux detector 60 so that magnetic flux emanating from the handle portion support structure is detectable when the hand-supportable housing is placed within the scanner support stand, as shown in FIGS. 1, 13, 15, and 17. In this configuration, magnetic flux detector 60 is in proximity with the source of magnetic flux (i.e. magnetic bar in the scanner support stand) and thus long-range control activation signal A₄ =1 is provided to the system controller. In response, the system controller enables long-range object detection (i.e. E_(IRT) =0). When the hand-supportable housing is removed from the scanner support stand as shown in FIGS. 2, 11C, 14B and 16B, the intensity of the magnetic flux from the scanner support stand is no longer sufficient in strength to produce long-range mode activation signal A₄ =1; instead, short-range control activation signal A₄ =0 is provided to the system controller. In response, the system controller enables short-range object detection (i.e. E_(IRT) =1), and the automatic hand-supportable bar code reading device emulates the operational range of a CCD scanner.

As illustrated in FIG. 2A, a thin ferrous plate 62 is exteriorly applied to the underside of the head portion of the hand-supportable housing. As will be described in greater detail hereinafter, the function of ferrous elements 61 and 62 is to provide a means by which the plastic hand-supportable housing can be magnetically attracted by magnetic elements installed within head and handle portion support structures 12B and 12C when the bar code reading device is placed in the scanner support stand.

It is understood that there are a variety of ways in which to configure the above described system components within the hand-supportable housing of the automatic bar code reading device, while successfully carrying out of functions of the present invention. In FIGS. 2A through 2D, one preferred arrangement is illustrated.

In FIG. 2B, the optical arrangement of the system components is shown. Specifically, visible laser diode 50 is mounted in the rear corner of circuit board 63 installed within the head portion of the housing. Stationary concave mirror 55 is mounted centrally at the front end of circuit board 63, primarily for the purpose of collecting laser light reflected off detected objects. Notably, the height of concave mirror 55 is such as not to block transmission aperture 13. Mounted off center onto the surface of concave mirror 55, is a very small second mirror 64 for directing the laser beam to planar mirror 52 which is connected to the motor shaft of scanning motor 53, for joint oscillatory movement therewith. As shown, scanning motor 53 is mounted centrally at the rear end of circuit board 63. In the opposite rear corner of circuit board 63, photodetector 56 and frequency selective filter 57 are mounted.

In operation, laser diode 50 adjacent the rear of the head portion, produces a laser beam which is directed in a forward direction to the small stationary mirror 64 and is then reflected back to oscillating mirror 52. Oscillating mirror 52 directs the laser beam through transmission aperture 13 and light transmissive window 10, while repeatedly scanning the laser beam across the scan field. Under the control of the user, the visible laser beam is aligned with a bar code symbol on the detected object, so that the laser beam scans the bar and space pattern thereof. A portion of the scattered laser light reflected from the bar code symbol is directed back through the light transmissive window and towards oscillating mirror 52, which also acts as a light retroreflective mirror. Oscillating mirror 52 then directs the reflected laser light to stationary concave collecting mirror 55 at the forward end of the head portion of the handsupportable housing. The laser light collected from the concave mirror 55 is then directed to photodetector 56 to produce an electrical signal representative of the detected intensity of the laser light reflected off the bar code symbol.

As illustrated in FIG. 2C, IR LED 34 and photodiode 37 are mounted to circuit board 63, in front of stationary concave mirror 55 and in a slightly offset manner from longitudinal axis 15 of the head portion of the housing. Apertures 65A and 65B are formed in opaque housing panel 14B, below transmission aperture 13, to permit transmission and reception of pulsed IR energy signals, as hereinbefore described. In order to shield IR radiation from impinging on photodiode 37 via the housing, a metallic optical tube 66 having an aperture 67 encases photodiode 37. The dimensions of aperture 67, the placement of IR LED 34 and its radiation transmission characteristics collectively will determine the radiation pattern of the transmitted IR signal from aperture 65A in the housing. In order to collect pulsed IR radiation from the object detection field of designed geometry, photodiode 37 is located at a selected distance behind aperture stop 65B formed in opaque housing panel 14B, as shown in FIG. 2D. By selecting the dimensions of aperture stop 65B and the placement of photodiode 37 (and integrally formed lens 36) behind aperture stop 65B, the desired geometrical characteristics and the object detection field can be directly determined, as described hereinbefore.

In order to prevent optical radiation slightly below 670 nanometers from passing through transmission aperture 13 and entering the housing, light transmissive window 10 is realized as a plastic filter lens 10 is installed over the transmission aperture. This plastic filter lens has optical characteristics which transmit only optical radiation from slightly below 670 nanometers. In this way, the combination of plastic filter lens 10 at the transmission aperture and wavelength selective filter 57 before photoreceiver 56 cooperate to form a narrow band-pass optical filter having a center wavelength λ_(c) =670 nanometers. By permitting only optical radiation associated with the visible laser beam to enter the housing, this optical arrangement provides improved signal-to-noise ratio for detected scan data signals D₁.

In addition to the above-described optical and electro optical components, circuit board 63 carries all other electronic components and associated circuitry used in realizing IR object detection circuit 16A, scanning mechanism 17, photoreceiving circuit 18, and A/D conversion 19. With respect to the other system components, a second circuit board 69 is mounted within the handle portion of the housing, as shown in FIGS. 2A and 2B. The function of circuit board 69 is to carry electronic components and associated circuitry used in realizing bar code presence detection module 20, bar code scan range detection module 21, symbol decoding module 22, data format conversion module 23, data storage unit 24, data transmission circuit 25, magnetic field detection circuit 26, manual range/mode selection switch 27, and system controller 28. All conductors associated with flexible multiwire scanner cable 5 are electrically connected to circuit board 69 in a manner well known in the art. Electrical communication between circuit boards 63 and 69 is realized using a plurality of electrical wires jumping across these circuit boards.

Having described the detailed structure and internal functions of the automatic bar code reading device of the illustrative embodiment, the operation of its system controller will now be described with reference to system block diagram shown in FIG. 4, the intensity versus time characteristic shown in FIG. 6, and Blocks A to CC shown in FIGS. 7A and 7B.

Beginning at the START block of Main System Control Routine of FIG. 7A and proceeding to Block A, bar code reading device 2 is initialized. This involves continuously activating (i.e. enabling) IR sensing circuit 16A and the system controller. The system controller, on the other hand, deactivates (i.e. disables) the remainder of activatable system components, e.g. laser diode 50, scanning motor 53, photoreceiving circuit 18, A/D conversion circuit 19, bar code presence detection module 20, bar code scan data range detection module 21, symbol decoding module 22, data format conversion module 23, data storage unit 24, and data transmission circuit 25. All timers T₁ T₂ and T₃ (not shown) are maintained by the system controller, and as indicated, are reset to t=0 seconds.

Proceeding to Block B, the system controller checks to determine whether control activation signal A₁ =1 is received from IR sensing circuit 16A. If this signal is not received, then the system controller returns to the START Block. If signal A₁ =1 is received, indicative that an object has been detected within the object detection field, then the system controller proceeds to Block C, at which (i) timer T₁ is started and is permitted to run for a preset time period, e.g. 0≦T₁,≦90 seconds, (ii) timer T₂ is started and permitted to run for a preset time period 0≦T₂ ≦0.5 seconds, and (iii) timer T₃ is started and permitted to run for a preset time period (e.g. 0<T₃ <0.75 seconds. Notably, timers T₁, T₂ and T₃ may be implemented in a variety of ways well known in the art.

Proceeding to Block D, the system controller activates laser diode 50, scanning motor 53, photoreceiving circuit 18, A/D conversion circuit 19 and bar code presence detection module 20 in order to collect and analyze scan data signals D₂ for the purpose of determining whether or not a bar code is within the scan field. Then, at Block E, the system controller checks to determine whether control activation signal A₂ =1 is received from bar code presence detection module 20 within time period 0≦T₂ ≦0.5 seconds. If activation control signal A₂ =1 is not received within this time period, indicative that a bar code is not present in the scan field, then the system controller proceeds to Block F. At Block F, the system controller deactivates laser diode 50, scanning motor 53, photoreceiving circuit 18, A/D conversion circuit 19 and bar code presence detection module 20 for a predetermined time period T_(Laseroff) (e.g. 0.5 seconds). Then the system controller proceeds to Block G to determine whether the elapsed time on timer T₁ is greater than 90 seconds. If not, then the system controller proceeds to Block H, at which the system controller determines whether it receives control activation signal A₁ =0 from IR sensing circuit 16A, indicative that the object is no longer in the object detection field. If this condition exists, the system controller returns to the START Block. If, however, the system controller receives control activation signal A₁ =1 within time period 0<T₁ ≦90 seconds, indicative that a object has been detected, then the system controller proceeds to Block I, at which the system controller resets and restarts timers T₂ and T₃.

Returning to Block D, the system controller reactivates laser diode 40, scanning motor 53, photoreceiving circuit 18, and A/D conversion circuit 19, and the bar code symbol presence detection module 20. At this stage, fresh bar code scan data is collected and subjected to bar code presence detection data processing. At essentially the same time, the system controller determines at Block F whether control activation signal A₂ =1 is received from the bar code presence detection module 20 within T₂ =0.5 seconds, indicative that a bar code symbol has been detected within the allotted time period. If control activation signal A₂ is not received within the time period 0≦T₂ ≦0.5 seconds, the system controller proceeds to Block F to deactivate laser diode 50, scanning motor 53, photoreceiving circuit 18, A/D conversion circuit 19, and bar code presence detection module 20.

At Block G, the system controller checks to determine whether the elapsed time on timer T₁ is greater than 90 seconds. If at Block H control activation signal A₁ =1, indicative that an object is still present in the object detection field, the system controller then resets and restarts timers T₂ and T₃ at control Block I, and returns to control Block D, repeating the operations specified in the control loop defined by Blocks D, E, F, G, H, I, D. So long as the object appears within the object detection field and the elapsed time on timer T₁ has not exceeded 90 seconds, the operation of the system controller will be governed by this control loop and the system will remain in the bar code symbol presence detection state. While in this control loop, which can last up to 90 seconds in the illustrative embodiment, the visible laser beam emitted from visible laser diode 50 comprises a plane of pulsed laser light which "flickers" or "blinks" at a flicker sensitivity rate R_(FLICKER) equal to 1/T_(flicker), where T_(flicker) equals T₂ +T_(Laseroff), T₂ equals the time length of timer T₂, and T_(Laseroff) equals the time period that laser diode 50 is intermittently deenergized during the elapsed time period of timer T₁.

During bar code presence detection state (e.g. 0≦T₃ ≦90), the flickering nature of the laser scanning beam significantly improves the user's visual perceptibility thereof as it is scanned across the detected object while the user attempts to visually register (i.e. align) the laser beam with the bars and spaces of a bar code symbol on the detected object. The improvement in the visual perceptibility of the flickering laser scanning beam is manifested by the fact that the flickering laser scanning beam is more visually conspicuous than a like laser beam of constant luminosity or intensity. This psychophysiological phenomenon is due to the low frequency pulsed nature of the laser scanning beam. While it is understood in the ophthalomological art that the human visual system is more sensitive to light flickering below about 16 Hz than light of constant luminosity (i.e.intensity), no one in the bar code symbol scanning art has ever recognized or appreciated that this principle could be utilized to solve the visual perceptibility problem occurring in automatic hand-held laser bar code symbol scanners.

The present invention solves the laser scanning beam perceptibility problem in a highly effective manner by applying the principle of "psychophysiological flicker sensitivity" to the construction of the automatic laser bar code symbol scanner of the present invention. Specifically, by causing the intensity of the visible laser scanning beam to flicker at a rate R_(flicker) greater than about 0.10 Hz and less than about 16 Hz, the visual conspicuousness of the laser scanning beam can be significantly improved, while advantageously decreasing the output power of laser diode 50. In any particular embodiment of the present invention, the flicker frequency of the visible laser scanning beam can be selected using the following procedure. First, a value will be selected for time period T₂ which provides sufficient time for the bar code symbol reader to capture multiple lines of scan data from the bar code symbol. This selection will depend on the scanning velocity of the laser beam, the collection optics and data processing considerations. Then, for any selected value of T₂, the laser-off time period T_(Laseroff) can be selected so that a desired value of R.sub. flicker within the range of about 0.1 to about 16 Hz, is obtained. Then by setting parameters T₂ and T_(Laseroff) in the system controller, the desired flicker frequency will automatically be set within the automatic bar code symbol scanner.

When at Block G, the system controller determines that the elapsed time on timer T₁ exceeds 90 seconds, it proceeds to Block J, at which it remains until control activation signal A₁ equals 0, indicative that the object no longer resides within the object detection field. While the system controller resides at Block J, laser diode 50 and scanning motor 53 are deactivated, thus conserving electrical power. The system controller will reside at Block J when placed upon a countertop surface for more than 90 seconds or when a object remains in the scan field for more than 90 seconds. If at Block J control activation signal A₁ does not equal 1 (i.e. A₁ =0), indicative that the object no longer resides in the object detection field, then the system controller returns to Block A and thereafter remains in the control loop defined by Blocks A, B, A until the same or another object appears in the object detection field. This return to Block A will occur when the hand-supportable bar code symbol reading device is placed within support stand 3 for a time period longer than T₃ =90 seconds, or when held in space without an object in its object detection field for more than 90 seconds. Then, when the same or another object is brought into the objection detection field (while in the stand or during hands-on operation), the system controller will leave the control loop defined by Blocks A, B, A.

At that time, the pulsed laser scanning beam will be again produced while the system controller proceeds through the control loop defined by Blocks D, E, F, G, H, I, D during the bar code presence detection state of operation.

If at Block E, the system controller receives control activation signal A₂ =1 within T₂ <0.15 seconds, indicative of a bar code symbol present in the scan field, then system controller proceeds to Block K. At this control Block, the system controller continues activation of laser diode 50, scanning motor 53, photoreceving circuit 18 and A/D conversion circuit 19, and commences the activation of symbol decoding module 22. As will be described hereinafter, movement from control Block E to Block K represents a transition from the bar code presence detection state to the bar code symbol reading state. At Block L, the system controller then determines whether it receives control activation signal A₃ =1, indicative that a bar code symbol has been decoded within T₃ ≦0.75 seconds. If not, then the system controller returns to Block F, at which laser diode 50, scanning motor 53, and other activatable components are deactivated as previously described.

If at Block L, the system controller determines that control activation signal A₃ =1 is received from signal decoding module 22 within time period 0≦0.75 seconds, indicative that the detected bar code symbol has been decoded, it then proceeds to Block M. At this control Block, the system controller determines whether the decoded bar code symbol is different from the previously decoded bar code symbol. If it is different, then the system controller proceeds to Block N, as illustrated. At this Block, the system controller continues activation of laser diode 50, scanning motor 53, photoreceiving circuit 18, and A/D conversion circuit 23, and commences activation of data format conversion module 23, data storage unit 24 and data transmission unit 25. In effect, the user is given a full T₁ =90 seconds to detect and decode one or more different bar code symbols on a single object without having to remove the object from the object detection field. If, however, the decoded bar code symbol is not different than the previously decoded bar code symbol, then at Block D the system controller checks to determine whether timer T₃ has lapsed (i.e. T₃ >0.75 seconds). If it has not lapsed, the system controller returns and proceeds through the control loop defined by Blocks L, M, P, L, within which the device is permitted to successfully decode a detected bar code symbol in the scan field code symbol within the set time interval 0≦T₃ ≦0.75 seconds. If, however, timer T₃ lapses, then the system controller proceeds to Block F to reenter the control loop defined by control Blocks D, E, F, G, H, I D. These operations ensure repeated scanning of the beam across the scan field, while symbol character data is being appropriately formatted and transmitted to host computer system 6 by a conventional data communication process well known in the art. Notably, movement from Block M to N represents a transition from the bar code symbol reading state to symbol character data transmission state.

After transmission of symbol character data to the host device is completed, the system controller reenters (at Block F) the control loop defined by Blocks D, E, F, G, H, I, D. At this stage of the control process, the system controller deactivates laser diode 50, scanning motor 53, photoreceiving circuit 18 and A/D conversion circuit 19 for T_(Laseroff) =0.5 seconds. This event represents a transition from the bar code reading state to the remaining 90 seconds of the bar code presence detection state. Reentering this control loop represents a transition from the bar code symbol reading state back to the bar code symbol detection state, in which the laser scanning beam flickers in the scan field at the flicker rate R_(flicker) defined above.

The operation of automatic hand-supportable bar code reading device 2 has been described in connection with the Main System Control Routine which uses control activation signals A₁, A₂ and A₃. This system control routine operates on two basic assumptions concerning IR sensing circuit 16A and bar code symbol presence detection module 20. Specifically, the Main System Control Routine assumes that the IR sensing circuit produces control activation signal A₁ =1 whenever an object is detected anywhere within the operative detection range of the object detection field. It also assumes that the bar code symbol presence detection module produces control activation signal A₂ =1 whenever a bar code symbol is detected anywhere within the operative scanning range of the scan field. These assumptions cause state transitions during the operation of the automatic bar code symbol reading device, when otherwise they may not be desired in particular applications.

For example, in some applications it may not be desirable to automatically advance the bar code symbol reading device to its bar code presence detection state until an object bearing a bar code is within the short-range portion of the object detection field, as hereinbefore described. Also, it may not be desirable to automatically advance to the bar code symbol reading state until a detected bar code symbol is located within the short-range portion of the scan field. Also, it may not be desirable to automatically advance to the symbol character data storage/transmission state until a decoded bar code symbol is located within the short-range portion of the scan field. Thus, in some instances, it may be desirable to condition transition from (i) object detection to the bar code symbol detection state, (ii) the bar code symbol detection state to the bar code symbol reading state, and (iii) the bar code symbol reading state to the symbol character data storage/transmission state. Yet, in other instances, it may only be desirable to condition only one or two of these state transitions.

FIGS. 8A and 8B illustrate the Auxiliary System Control Routine with Range Selection which provides the automatic bar code reading device of the present invention with range selection capabilities for object detection, bar code presence detection, and bar code symbol reading. These range selection functions are provided when the system controller runs the Auxiliary System Control Routine of in cooperation with the Main System Control Routine described above. It is understood, however, that this Auxiliary System Control Routine may be adapted for use with other suitable system control programs.

Beginning at the START block and proceeding to Block A' of FIG. 8A, the system controller initially selects the long-range object detection mode by letting the IR sensing circuit operate at full sensitivity (i.e. E_(IRT) =0). To determine whether the short-range mode of object detection, bar code symbol presence detection and bar code symbol reading has been selected, the system controller proceeds to Block B' and checks whether it has received control activation signal A₄ =1. As described hereinbefore in connection with FIG. 4, activation signal A₄ =1 can be generated in at least two possible ways. For example, the short-range mode may be manually selected by depressing switch 27 on the handle portion of the housing. Alternatively, the short-range mode may be selected by simply lifting the bar code reading device out from the scanner support stand, as illustrated in FIGS. 2, 11C, 14B, and 16B. In either case, prior to operating the bar code reading device, it is preferred that either the manual or automatic range mode selection mechanism be programmably set within the system controller by way of bar code menu programming, a technique well known in the art. For purposes of illustration only, the Auxiliary System Control Routine of FIGS. 8A and 8B will be described using the automatic range mode selection mechanism provided by magnetic sensing circuit 26.

If control activation signal A₄ =1 is received at Block B', then the system controller selects short-range object detection by desensitizing the IR sensing circuit. This is achieved by providing mode selection enable signal E_(IRT) =1 as hereinbefore described Then proceeding to Block D', the system controller enters the START block of Main System Control Routine of FIGS. 7A and 7B. Thereafter, the control flow proceeds as prescribed by the Main System Control Routine. Notably, whenever the control flow in the Main System Control Routine returns to the START block of FIG. 7A, the system controller exits Main System Control Routine and returns to the START block of FIG. 8A.

As illustrated at Block E' of FIG. 8A, whenever the control flow is at Block D in the Main System Control Routine, the system controller activates bar code presence detection 20 module and bar code scan range detection module 21. Thereafter, while at any one of these control Blocks, the bar code scan range detection module processes scan data signals D₂ so as to produce digital count and sign data as hereinbefore described As indicated at Block F', an additional condition is placed on control Block E in the Main System Control Routine so that a transition from the bar code presence detection state to the bar code symbol reading state occurs only if (i) the object is detected in the short-range portion of the object detection field, and (ii) the bar code symbol is detected in the short-range portion of the scan field. In terms of data processing, when the system control flow is at any one of such blocks in the Main System Control Routine and the system controller receives control activation signal A₂ =1, then the system controller also determines whether the digital count data of the detected bar code resides within the short-range count interval.

If the produced digital count data D_(C1) indicates that the detected bar code symbol is located within the short-range portion of the scan field, then as indicated at Block G' of FIG. 8B, the system controller continues activation of the laser diode 50, scanning motor 531 photoreceiving circuit 18 and A/D conversion circuit 19, while commencing activation of symbol decoding circuit 22. As indicated at Block H'. Whenever the control flow is at either Block L in the Main System Control Routine and the system controller receives third control activation signal A_(3a) =1, then the system controller determines whether the digital count data D_(c1) from the decoded bar code symbol resides within the short-range count interval (i.e. A_(3b) =1). If digital count data D_(c2) resides within the short-range portion of the scan field (i.e. A_(3b) =1), then as indicated at Block I', the system controller proceeds to Block M in the Main System Control Routine. If at Block H' digital count data D_(c1) is not within the short-range portion of the scan field (i.e. A_(3b) =0), then as indicated at Block J', the system controller proceeds to Block F in the Main System Control Routine. If, however, digital count data D_(c1) produced at Block E indicates that the detected bar code symbol is not located within the short-range portion of the scan field (i.e. A_(2b) =0), then as indicated at Block K' of FIG. 8A, the system controller proceeds to Block F in the Main System Control Routine.

Turning attention to Block B' of FIG. 8A, the system controller may not receive control activation signal A₄ =1 from range selection circuits 26 or 27, as indicated at this Block. Instead, short and long-range mode capabilities can be automatically selected by reading bar code symbols. This can be achieved by programming symbol decoding module 22 to recognize predesignated bar code symbols which automatically activate and deactivate long-range and short-range modes of object detection, bar code presence detection, and/or bar code symbol reading. This mechanism for automatic range selection is highly advantageous in many applications, such as, for example, reading bar code menus, CCD scanner emulation and the like.

As indicated at Block B' in FIG. 8A, when control activation signal A₄ =1, the system controller activates the long-range mode of object detection by letting IR sensing circuit 16A operate at full sensitivity (i.e. E_(IRT) =0), as indicated at Block L'. Then at Block M', the system controller enters the START block of Main System Control Routine of FIGS. 7A and 7B. As indicated at Block N', before entering Block N of the Main System Control Routine, the system controller determines whether the successfully read bar code symbol is a bar code symbol which has been predesignated to activate the short-range mode of object detection, bar code presence detection and/or bar code symbol reading. This condition is determined by the system controller checking whether control activation signal A₅ =1 is received from the symbol decoding module shown in FIG. 4. If control activation signal A₅ =0 is received by the system controller, then as indicated at Block 0', the system controller proceeds to Block N of the Main System Control Routine. If, however, control activation signal A₅ =1 is received, then as indicated at Block P', the system controller activates the short-range mode of object detection by desensitizing IR sensing circuit 16A (i.e. E_(IRT) =0). This operation ensures that control activation signal A₁ is produced only when an object is detected within the short-range portion of the object detection field. As indicated at Block Q' of FIG. 8A, whenever the system controller is at Block D in the Main System Control Routine. The system controller activates bar code presence detection module 20 and bar code scan range detection module 21.

As indicated at Block R', an additional condition is placed on control Block E in the Main System Control Routine. Specifically, a transition from the bar code presence detection state to the bar code symbol reading state occurs only if the detected bar code symbol resides in the shortrange portion of the scan field. This condition is satisfied by the scan range detection module determining whether or not the digital count data of the detected bar code symbol falls within a prespecified short-range count interval. If this digital count data does not fall within the short-range count interval, then as indicated at Block R', the system controller proceeds to control Block F in the Main System Control Routine, as indicated at Block K'. If, however, the digital count data is within the prespecified short-range count interval, then control activation signal A_(2B) =1 is provided to the system controller as illustrated in FIG. 4. In this instance, both control activation signals A_(2A) =1 and A_(2B) =1 are provided to the system controller so as to effectuate a transition to the bar code symbol reading state. This event is represented at Block G' of FIG. 8B by the system controller continuing the activation of laser diode 50, scanning motor 53, photoreceiving circuit 18, A/D conversion circuit 19 and bar code scan range detection module 20, while deactivating bar code symbol detection module 21 and activating symbol decoding module 22.

As indicated at Block H' of FIG. 8B, when the control flow is at Block L in the Main System Control Routine and the system controller receives control activation signal A_(3A) =1, then the system controller determines whether the digital count data of the decoded bar code symbol is within the short-range count interval. If the bar code scan range detection module determines that decoded bar code symbol resides within the prespecified short-range portion of the scan field, then it provides third control activation signal A_(3B) =1 to the system controller, causing the bar code reading device to undergo a transition to the symbol character data transmission/storage state. In this case, as indicated at Block U', before entering Block N in the Main System Control Routine, the symbol decoding module determines whether the decoded bar code symbol is a short-range mode deactivation symbol. If the decoded bar code is such a symbol, then as indicated at Block V', the system controller activates the long-range mode by letting IR sensing circuit 16A operate at full sensitivity (i.e. E_(IRT) =0), while deactivating bar code scan range detection module 21. Thereafter, the system controller proceeds to Block F in the Main System Control Routine as indicated at Block W. If, however, the decoded bar code symbol is not a short-range mode deactivation symbol, then as indicated at Block U', the system controller proceeds directly to Block N in the Main System Control Routine, as indicated at Block X. If, however, as indicated at Block T' the decoded bar code symbol does not reside within the short-range portion of the scan field, the system proceeds to Block F1.

Having described the operation of the illustrative embodiment of the automatic hand-supportable bar code reading device of the present invention, it will be helpful to describe at this juncture the Various conditions which cause state transitions to occur during its operation. In this regard, reference is made to FIG. 9 which provides a state transition diagram for the illustrative embodiment.

As illustrated in FIG. 9, the automatic hand-supportable bar code reading device of the present invention has four basic states of operation namely: object detection, bar code symbol presence detection, bar code symbol reading, and symbol character data transmission/storage. The nature of each of these states has been described above in great detail. These four states are schematically illustrated as A, B, C and D, respectively, in the state transition diagram of FIG. 9.

As shown in FIG. 9, transitions between the various states are indicated by directional arrows. Besides each set of directional arrows are transition conditions expressed in terms of control activation signals (e.g. A₁, A₂ and A₃, and where appropriate, state time intervals (e.g. T₁, T₂, and T₃). Conveniently, the state diagram of FIG. 9 expresses most simply the four basic operations occurring during the control flow within the system control program of FIGS. 7A and 7B. Significantly, the control activation signals A₁, A₂ and A₃ in FIG. 9 indicate which events within the object detection and/or scan fields can operate to effect a state transition within the allotted time frame(s), where prescribed.

Referring now to FIGS. 10 through 10B, the scanner support stand of the present invention will be described.

As illustrated in FIGS. 10 through 10B, scanner stand 3 of the illustrative embodiment comprises support frame 12 releasably connected to a base support/mounting plate 70 by way of a snap fit fastening mechanism illustrated in FIG. 13C. In the illustrative embodiment, support frame 12 is formed as an injection molded shell, in which handle portion support structure 12B is realized by a first support recess 71; whereas head portion support structure 12C is realized by a second support recess 72. As shown in FIG. 10, first support recess 71 is disposed above base portion 12A and inclined at a first acute angle B₁ with respect thereto, while second support recess 72 is disposed above base portion 12B and inclined at a second acute angle B₂ with respect thereto.

As best shown in FIG. 10, first support recess 72 is formed by a first substantially planar support surface 73 surrounded by the projection of opposing side walls 74A and 74B and rear wall 74C, extending above planar support surface 73 in a perpendicular fashion. The function of support recess 71 is to receive and support the handle portion of hand-supportable bar code reading device. Similarly, second support recess 72 is formed by a second substantially planar support surface 75 surrounded by the projection of opposing side walls 76A and 76B and front wall surface 76C extending above planar support surface 75 in a perpendicular fashion.

The function of support recess 72 is to receive and support the head portion of hand-supportable bar code reading device 2. In order that the handle portion of hand-supportable bar code reading device 2 can be received within support recess 71, rear wall 74C has a scanner cable aperture 77 which permits flexible scanner cable 5 to extend freely out beyond support recess 71. Also, front wall projection 76C is slightly lower than side wall projection 76A and 76B to ensure that pulsed IR energy is freely transmitted from and received by object detection circuit 16A contained within head portion 9A. At the same time, this structural feature of the scanner support stand ensures that visible laser light is projected, scanned and collected through light transmissive window 10 without obstruction, i.e. when the automatic bar code reading device is operated in its automatic hands-free mode, shown in FIGS. 15 and 17.

In order to ensure that the hand-supportable bar code reading device of the present invention will be securely, yet releasably supported within support recesses 71 and 72 and not easily knocked out of the scanner support stand during the hands-free mode of operation, first and second magnetic elements 77 and 78 are permanently mounted to the underside of planar support surfaces 73 and 75, respectively, as illustrated in FIG. 10B. With this arrangement, magnetic flux of constant intensity continuously emanates from support recesses 71 and 72. As a result, when the handle and head portions of the bar code reading device are placed within support recesses 71 and 72, ferrous element 61 in handle portion 9A is magnetically attracted to magnetic element 77, while ferrous element 62 on head portion 9B is magnetically attracted to magnetic element 78. The magnetic force of attraction between these elements is selected so that a desired degree of force is required to lift the automatic bar code reading device out of scanner support stand, while preventing accidental displacement of the device from the scanner support stand during use in the hands-free mode of operation.

As illustrated in FIG. 10A, base support/mounting plate 70 is formed as a thin planar structure having perimetrical dimensions substantially equal to the perimetrical dimensions of the base portion of support frame 12. At the front and rear end portions 70A and 70B of base plate 70, a pair of projections 79 and 80 extend perpendicularly, as shown. Projections 79 and 80 have horizontal flanges 79A and 80A, respectively, which are adapted to snap fit into horizontal grooves 81 and 82, formed on the interior surfaces of front and rear walls 76C and 74C, as shown in FIGS. 10A, 10B and 13C.

To facilitate mounting of base plate 70 on a planar mounting surface, as illustrated in FIGS. 12A and 12B, a pair of spaced apart mounting holes 83A and 83B are provided. To facilitate attachment of base plate 70 to pivotal joint assembly 97 of pedestal base 98, as illustrated in FIGS. 18A through 18C, a set of four centrally disposed mounting holes 84A, 84B, 84C and 84D are provided. To facilitate support of base plate 70 upon a horizontal support surface, as illustrated in FIGS. 11A through 11D, a set of four rubber feet 85A, 85B, 85C and 85D may be adhesively applied to the underside corners of the base plate 70.

In order to eliminate the confusion produced by various cables used to connect automatic bar code scanning device 2 to its external power supply (not shown) and associated host computer system 6, an adapter module 86 is concealed within the interior volume 87 contained between the interior surface of base portion 12A of the support frame and the upper surface of base plate 70. In the illustrated embodiment, adapter module 86 is adhesively affixed to the central portion of the upper surface of base plate 70, as illustrated in FIG. 10A. Scanner connector 31 of flexible scanner cable 5 is plugged into scanner jack 86A of the adapter module, and the communication cable connector of flexible communication cable 7 is plugged into communication jack 86B. Similarly, the power supply connector from the DC power supply cable 8 is plugged into power supply jack 86C, as shown. With these interconnections established, support frame 12 is snapped onto base plate 70, as hereinbefore described, flexible scanner cable 5 is routed through aperture 87, and flexible communication and power supply cables 7 and 8 are routed through aperture 88 formed in the lower portion of rear wall 74C of the support frame, as shown in FIG. 10B.

In the illustrative embodiment, automatic bar code reading device 2 requires one regulated DC supply voltage to power the visible laser diode and other electronic and opto-electronic components mounted on circuit boards 63 and 69. However, in many applications, a 12 V DC supply voltage is available at the point-of-sale station. Thus, in order to convert the 12 V DC supply voltage to a 5 V DC supply voltage, a DC-to-DC voltage converter is incorporated into adapter module 86. In this way, in addition to providing interconnections between the communication lines of the flexible scanner and communication cables, adapter module 86 also provides a means for converting the voltage level of the flexible power supply cable to one or more required voltages to be utilized in the bar code reading device. The automatic bar code reading device of the present invention has been described in great detail. Thus, it is appropriate at this juncture to illustrate the automatic hands-on and hands free modes of operation of the system while utilized in different mounting installations.

In FIGS. 11A through 11D, a point-of-sale station is shown comprising an electronic cash register 6 operably connected to the automatic bar code reading system of the present invention by way of flexible communication cable 7. Low voltage DC power is provided to the system by way of flexible power supply cable 8. In this particular mounting installation, scanner support stand 3 includes rubber feet 85A through 85D and is supported on a horizontal countertop surface 90. If necessary or desired in such mounting installations, base plate 70 may be weighted by affixing one or more dense mass elements to the upper surface of the base plate.

With automatic bar code reading device 2 supported within scanner support stand 3 as shown in FIG. 11A, the system is automatically induced into its automatic long-range hands-free mode of operation. However, owing to the positioning of both object detection and scan fields in this mounting installation, only bar code symbols located on small, very low profile objects can be easily read. In order to induce the system into its short-range hands-on mode of operation, the user simply encircles the handle portion of the handsupportable device with his or her fingers, and then lifts the device out of the scanner support stand, as shown in FIGS. 11B. With the automatic bar code reading device held in the user's hand, and a bar coded object 91 in the other hand, the object is moved into the short-range portion of the object detection field as shown in FIG. 11C, where the object is automatically detected and bar code symbol 92 automatically scanned by the visible laser beam repeatedly scanned across the scan field. After the bar code symbol has been successfully read and an audible and/or visible indication thereof produced by successful read indicator 120, the bar code reading device is placed back within the scanner support stand, as shown in FIG. 11A, where it is once again induced into its long-range hands-free mode of operation.

In FIGS. 12A and 12B, the scanner support stand of the present invention is shown being installed on a vertical counter wall surface of a point-of-sale station having an electronic cash register 6. As shown in FIGS. 12A and 13B, to install the scanner support stand, a pair of spaced apart mounting screws 94A and 94B are partially screwed into vertical counter wall surface 93 so that base plate 70 will be vertically arranged slightly below horizontal countertop surface 95. Then, mounting holes 83A and 83B and screws 94A 20 and 94B are passed through base plate 70, and then the base plate is slid down slightly and screws 94A and 94B completely threaded into the vertical counter wall surface. After attaching adaptor module 86 and flexible scanner, communication and power supply cables 5, 7, and 8 into their respective jacks in the adaptor module, support frame 12 is snap fitted over the mounted base plate, as shown in FIG. 12B, to provide an installed automatic bar code reading system, as shown in FIG. 13.

With automatic bar code reading device 2 positioned within scanner stand 3 as shown in FIG. 14, the system is automatically induced into its long-range hands-free mode of operation. In this configuration, bar code symbol 92 on object 91 can be easily read by the user grasping the object and bringing it into the short-range portion of the object detection field, as illustrated in FIG. 14. Thereupon, the object is automatically detected and bar code symbol 92 scanned by the visible laser beam repeatedly scanned across the scan field.

In order to read bar code symbols in the short-range hands-on mode of operation, the user grasps the handle portion of the bar code reading device as illustrated in FIG. 15A, and lifts it out of the scanner support stand. Then the user brings object 91 into the short-range portion of the object detection field as illustrated in FIG. 15B, so as to automatically detect the object and scan bar code symbol 92 with the visible laser beam repeatedly moving across the scan field. After the bar code symbol has been successfully read and an audible and/or visible indication thereof produced, the bar code reading device is placed back into the scanner support stand, automatically inducing the system into its long-range hands-free mode of operation.

In FIGS. 16 through 17B, a point-of-sale station is shown comprising the automatic bar code reading system of the present invention operably connected to electronic cash register 6 by way of flexible communication and power supply cables 7 and 8. In this particular mounting installation, scanner support stand 3 is pivotally supported above a horizontal counter surface 96 by way of a pivotal joint assembly 97 connected to pedestal base 98 mounted under the electronic cash register, as illustrated in FIGS. 18 and 18C.

As more clearly illustrated in FIG. 18, pivotal joint assembly 97 comprises a ball structure 99 joined to a mounting plate 100 by an extension 101. The pivotal joint assembly 97 also comprises a semispherical recess 102 formed in the end of a cylindrical support post 103. As shown in FIG. 18A, a ball clamping element 104, having a semispherical recess 105 and a bore 106, is connected to the distal end portion of support post 103 by an adjustment screw 107 passing through bore 106 and threaded into a hole 108 in the distal end portion of the support post. By rotating knob 109 attached to adjustment screw 107, aligned semispherical recesses 102 and 105 can be sufficiently separated apart to receive and retain ball structure 99. With this structural arrangement, ball structure 99 can be securely clasped within semispherical recesses 102 and 105 at any desired orientation by simply tightening adjustment screw 107 with several turns of knob 109. As illustrated in FIG. 18A, mounting plate 100 is fixedly connected to base plate 70 by bolts 110A through 110D threaded through holes 111A through 111D and 84A through 84D, respectively.

As illustrated in FIG. 18, the proximal end of support post 103 is fixedly connected to the upper portion of pedestal base member 98A, by screw 112. In order to maintain the scanner support stand stationary during bar code reading operations, pedestal base member 98B is mounted under electronic cash register 6. When installed in the manner illustrated, scanner support stand 3 can be adjustably positioned and locked into virtually any orientation in three-dimensional space, owing to the three principle degrees of freedom provided by the pivotal joint assembly. In FIGS. 16A, 18, 18B and 18C, these degrees of freedom are illustrated with respect to the cartesian coordinate system shown embedded within the pivotal joint assembly of the pedestal-mounted scanner support stand.

With automatic bar code reading device positioned within scanner stand 3 as shown in FIG. 16, the system is automatically induced into its long-range hands-free mode of operation. By simply moving object 91 into the object detection field, the bar code symbol 92 is repeatedly scanned by the visible laser beam scanned across the scan field. To induce the automatic bar code reading system into its short-range hands-on mode of operation, the user simply grasps the automatic bar code reading device and lifts it out of the scanner support stand, as illustrated in FIG. 17A. Then, by placing object 91 into the short-range portion of the object detection field, the object is automatically detected and bar code symbol 92 scanned by the visible laser beam repeatedly scanned across the scan field. After the bar code symbol has been successfully read and an audible and/or visible indication thereof produced, the automatic bar code reading device can be placed back into the scanner support stand, automatically inducing the system into its long-range hands-free mode of operation.

Having described the preferred embodiment of the present invention, several modifications come to mind.

For example, in alternative embodiments of the present invention, the automatic hand-supportable device may not incorporate within its housing, electronic circuitry for carrying out control, decoding other data processing functions; instead such electronic circuitry may be contained within a remote unit operably associated with the hand supportable device by way of the flexible scanner cable. In this embodiment, the hand-supportable device will function as an automatic hand-supportable laser scanner. Alternatively, the housing may be adapted for hand-mounting.

The automatic bar code reading device and scanner support stand of the present invention provides a fully automatic bar code reading system characterized by a automatic long-range hands-free and short-range hands-on mode of operation, highspeed symbol recognition, and versatility.

The automatic hand-supportable bar code reading device of the present invention has been provided with a wide variety of complex decision-making operations, endowing the system with a level of intelligence hitherto unattained in the bar code symbol reading art. Within the spirit of the present invention, additional decision-making operations may be provided to further enhance the capabilities of the system.

While the particular illustrative embodiments shown and described above will be useful in many applications in code symbol reading, further modifications to the present invention herein disclosed will occur to persons skilled in the art. All such modifications are deemed to be within the scope and spirit of the present invention defined by the appended claims. 

What is claimed is:
 1. An automatic bar code symbol reading system having an object detection mode of operation, a bar code symbol presence detection mode, and a bar code symbol reading mode of operation, said automatic bar code symbol reading system, comprising:a hand-supportable housing having a light transmission aperture through which visible light can exit and enter said hand-supportable housing and which can be supported by the hand of a user of said system; object detection means disposed in said hand-supportable housing for automatically detecting an object located within a portion of a scan field defined external to said hand-supportable housing; laser beam source in said hand-supportable housing for producing a visible laser beam within said hand-supportable housing; laser beam directing means in said hand-supportable housing, for directing said visible laser beam through said light transmission aperture and into a scan field defined external to said housing; a scanning mechanism in said hand-supportable housing for repeatedly scanning said visible laser beam across said scan field and a bar code symbol on said detected object, said scanned visible laser beam flickering in said scan field at a rate in the range from about 0.5 Hz to about 16 Hz so as to improve the visual conspicuousness of said visible laser beam in said scan field during said bar code symbol detection mode, as said user visually aligns said scanned visible laser beam with the bar code symbol on said detected object; light detection means in said hand-supportable housing, for detecting the intensity of laser light reflected off said bar code symbol as said visible laser beam is repeatedly scanned across said scan field and said bar code symbol, and for automatically producing scan data indicative of the detected intensity of said reflected laser light; scan data processing means for processing produced scan data so as to detect and decode said bar code symbol on said detected object, and upon detecting and decoding said bar code symbol on said detected object, automatically producing symbol character data representative of said decoded bar code symbol; and control means for controlling the operation of said laser beam source, said laser beam detection means, said scanning mechanism and said scan data processing means.
 2. The automatic bar code symbol reading system of claim 1, wherein said bar code symbol has first and second envelope borders, and wherein said scan data processing means comprisesmeans for detecting said first and second envelope borders of said bar code symbol, and means for decoding said detected bar code symbol.
 3. The automatic bar code symbol reading system of claim 1, wherein said hand-supportable housing comprises a head portion and a handle portion, and wherein said laser beam source, said laser beam directing means, said scanning mechanism, and said light detection means are disposed in said head portion.
 4. A method of reading bar code symbols using an automatic hand-supportable unit having an object detection mode of operation, a bar code presence detection mode of operation, and a bar code symbol reading mode of operation, said method comprising the steps:(a) in the hand of a user, manually supporting said hand-supportable unit adjacent an object in a non-contacting relationship therewith so that said object is located within at least a portion of a scan field defined external to said hand-supportable unit; (b) during said object detection mode, automatically generating an activation signal in response to the detection of said object located in said scan field; (c) in response to the generation of said activation signal during step (b) and automatically entering said bar code symbol presence detection mode,(1) automatically activating a laser beam source and an electrially driven scanning element in said hand-supportable unit so as to produce a visible laser beam which (i) is directed through a light transmission aperture in said hand-supportable unit and repeatedly scanned across said scan field and a bar code symbol on said detected object, and (ii) flickers in said scan field at a rate in the range from about 0.5 Hz to about 16 Hz so as to improve during said bar code symbol presence detection mode, the visual conspicuousness of said visible laser beam in said scan field as said user visually aligns said scanned visible laser beam with the bar code symbol on said detected object, (2) automatically detecting at said hand-supportable unit, the intensity of laser light reflected off said bar code symbol on said detected object, and automatically producing scan data indicative of the detected intensity of said reflected laser light, and (3) automatically processing produced scan data in order to detect said bar code symbol on said detected object; (d) upon detecting said bar code symbol, automatically entering said bar code symbol reading mode of operation, and continuing to produce scan data indicative of the detected intensity of laser light reflected of said detected bar code symbol, and automatically processing produced scan data in order to decode said laser bar code symbol on said detected object, and (e) upon decoding said detected bar code symbol, automatically producing symbol character data representative of said decoded bar code symbol.
 5. The method of claim 4, wherein said bar code symbol has first and second envelope borders, and wherein substep (C)(3) comprises detecting said first and second envelope borders of said bar code symbol and decoding said detected bar code symbol.
 6. An automatic bar code symbol reading system, having an object detection mode of operation, a bar code symbol presence detection mode of operation and a bar code symbol reading mode of operation, said automatic bar code symbol reading system comprising:a hand-supportable housing having a light transmission aperture through which visible light can exit and enter said hand-supportable housing and which can be supported by the hand of a user of said system who is endowed with a human visual system having a critical flicker frequency; object detection means in said hand-supportable housing, for automatically detecting, during said object detection mode, the presence of an object within at least a portion of a scan field defined external to said hand-supportable housing; laser beam source in said hand-supportable housing for producing, a visible laser beam within said hand-supportable housing; laser beam directing means in said hand-supportable housing, for directing said visible laser beam through said light transmission aperture and into said scan field; a scanning mechanism in said hand-supportable housing for repeatedly scanning, during said bar code symbol presence detection mode and said bar code symbol reading mode, said visible laser beam across said scan field and a bar code symbol on said detected object, said scanned visible laser beam flickering in said scan field during said bar code symbol presence detection mode, at a rate below the critical flicker frequency of the user's human visual system so as to improve the visual conspicuousness of said visible laser beam in said scan field as said user visually aligns said scanned visible laser beam with the bar code symbol on said detected object during said bar code symbol presence detection mode; light detection means in said hand-supportable housing, for detecting the intensity of laser light reflected off said bar code symbol as said visible laser beam is repeatedly scanned across said scan field and said bar code symbol during said bar code symbol presence detection and bar code symbol reading modes, and for automatically producing scan data indicative of the detected intensity of said reflected laser light; scan data processing means for processing produced scan data during said bar code symbol presence detection mode and said bar code symbol reading mode, so as to detect and decode said bar code symbol on said detected object, and upon detecting and decoding said bar code symbol, automatically producing symbol character data representative of said decoded bar code symbol; and control means for controlling the operation of said laser beam source, said laser beam detection means, said scanning mechanism and said scan data processing means during said bar code symbol presence detection mode and said bar code symbol reading mode.
 7. The automatic bar code symbol reading system of claim 6, wherein said bar code symbol has first and second envelope borders, and wherein said scan data processing means comprisesmeans for detecting said first and second envelope borders of said bar code symbol, and means for decoding said detected bar code symbol.
 8. The automatic bar code symbol reading system of claim 6, wherein said hand-supportable housing comprises a head portion and a handle portion, and wherein said laser beam source, said laser beam directing means, said scanning mechanism, and said light detection means are disposed in said head portion.
 9. A method of reading bar code symbols using an automatic hand-supportable laser scanning unit having an object detection mode, a bar code symbol presence detection mode and a bar code symbol reading mode, said method comprising the steps:(a) in the hand of a user, manually supporting said hand-supportable laser scanning unit adjacent an object in a non-contacting relationship therewith so that said object is located within at least a portion of a scan field defined external to said hand-supportable unit and said hand-supportable unit automatically detects said object with at least a portion of said scan field. (b) automatically generating an activation signal in response to the detection of said object located in said scan field so that said hand-supportable laser scanning unit is induced into said bar code symbol presence detection mode; (c) in response to the generation of said activation signal during step (b),(1) automatically activating a laser beam source and an electrically driven scanning element in said hand-supportable laser scanning unit so as to produce a visible laser beam which is directed through a light transmission aperture in said hand-supportable laser scanning unit and repeatedly scanned across said scan field and a bar code symbol on said detected object, and said scanned visible laser beam flickers in said scan field at a rate less than the critical flicker frequency of the user's human visual system, so as to improve the visual conspicuousness of said visible laser beam in said scan field as said user visually aligns said scanned visible laser beam with the bar code symbol on said detected object during said bar code symbol presence detection mode; (2) automatically detecting at said hand-supportable laser scanning unit, the intensity of laser light reflected off said bar code symbol on said detected object, and automatically producing scan data indicative of the detected intensity of said reflected laser light, and (3) automatically processing produced scan data in order to detect and decode said bar code symbol on said detected object; and (d) upon detecting and decoding said bar code symbol, automatically producing symbol character data representative of said decoded bar code symbol.
 10. The method of claim 9, wherein said bar code symbol has first and second envelope borders, and wherein substep (c)(3) comprises detecting said first and second envelope borders of said bar code symbol and decoding said detected bar code symbol. 